import type { GoodsType } from './goodsType'

// 全部分类的数据类型(包括推荐商品)
export interface CategoryType {
  id: string // 分类ID
  name: string // 分类名字
  picture: string // 分类名字
  children: CategoryChildrenType // 子分类数组
  goods: GoodsType // 分类下属商品
}
interface CategoryChildrenType {
  id: string // 二级分类ID
  name: string // 二级分类名字
  picture: string // 二级分类图片
  children: null // 三级分类数组(暂无)
  goods: null // 二级分类下属商品数组(暂无)
}

// 根据ID获取一级商品分类的数据类型
export interface CategoryByIdType {
  id: string // 一级分类ID
  name: string // 一级分类名字
  picture: string // 一级分类图片
  children: [CategoryByIdChildrenType] // 下属分类数组
}
interface CategoryByIdChildrenType {
  id: string
  brands: null
  categories: null
  name: string
  parentId: null
  parentName: null
  picture: string
  saleProperties: null
  goods: [GoodsType]
}

// 根据ID获取二级商品分类的数据类型
export interface CategoryTwoByIdType {
  id: string // 二级分类ID
  name: string // 二级分类名字
  parentId: string // 上一级的分类ID
  parentName: string // 上一级的分类名字
  picture: null // 二级分类图片
  brandsL: []
  categories: []
  goods: [GoodsType]
  saleProperties: []
}

// 获取更多商品数据发送的数据类型
export interface PostMoreGoodsType {
  categoryId: string // 分类ID
  page: number // 页码
  pageSize: number // 页大小
  sortField: string // 排序字段
}

// 获取更多商品数据的数据类型
export interface MoreGoodsType {
  coutnt: number
  page: number
  pageSize: number
  pages: number
  items: [GoodsType]
}
